package com.sssre.lttcloud.api.dto;

import com.sssre.lttcloud.api.entity.User;
import java.io.Serializable;
import java.util.List;

/**
 * 登录响应DTO
 */
public class LoginResponse implements Serializable {
    
    private static final long serialVersionUID = 1L;
    
    private String token;
    private String refreshToken;
    private User user;
    private List<String> permissions;
    private List<String> roles;
    private Long expiresIn;
    
    public LoginResponse() {}
    
    public LoginResponse(String token, User user) {
        this.token = token;
        this.user = user;
    }
    
    // Getters and Setters
    public String getToken() {
        return token;
    }
    
    public void setToken(String token) {
        this.token = token;
    }
    
    public String getRefreshToken() {
        return refreshToken;
    }
    
    public void setRefreshToken(String refreshToken) {
        this.refreshToken = refreshToken;
    }
    
    public User getUser() {
        return user;
    }
    
    public void setUser(User user) {
        this.user = user;
    }
    
    public List<String> getPermissions() {
        return permissions;
    }
    
    public void setPermissions(List<String> permissions) {
        this.permissions = permissions;
    }
    
    public List<String> getRoles() {
        return roles;
    }
    
    public void setRoles(List<String> roles) {
        this.roles = roles;
    }
    
    public Long getExpiresIn() {
        return expiresIn;
    }
    
    public void setExpiresIn(Long expiresIn) {
        this.expiresIn = expiresIn;
    }
    
    @Override
    public String toString() {
        return "LoginResponse{" +
                "token='" + token + '\'' +
                ", user=" + user +
                ", permissions=" + permissions +
                ", roles=" + roles +
                ", expiresIn=" + expiresIn +
                '}';
    }
} 